@import "~src/web/variables";

html,
body {
    height: 100%;
}

form .required label::after {
    content: "*";
    color: theme-color("danger");
}

// "bootstrap"
.form-control {
    &.is-valid,
    &.is-invalid {
        background-position-x: 98%;
    }
}

// "bootstrap"
.dropdown-toggle {
    display: flex;
    align-items: center;
}

// "bootstrap"
.btn-sm + .dropdown-toggle-split {
    @include app-dropdown-toggle-x-padding-split;
}

// "bootstrap"
.modal-footer {
    padding: $modal-header-padding;
}

// "bootstrap"
.list-group {
    > .list-group-item-action {
        cursor: pointer;
    }

    .list-group-item + .list-group-item {
        border-top-width: 1px;
    }

    .list-group-item-warning {
        border-color: map_get($app-account-title-btn-colors, "selected-border");

        + .list-group-item {
            border-top-width: 0;
        }
    }

    .list-group-item {
        &:not(:last-of-type) {
            &:not(.list-group-item-warning) {
                border-bottom-width: 0;
            }
        }
    }
}

// "bootstrap"
bs-dropdown-container {
    z-index: $zindex-dropdown;
}

// "ngx-bootstrap"
accordion-group {
    &.panel-open {
        .card-header {
            &::after {
                content: $fa-var-caret-up;
            }
        }
    }

    &:not(.panel-open) {
        .panel {
            border-bottom-width: 0;
        }
    }

    &:not(:first-child) {
        .panel {
            border-top-width: 0;
            border-top-right-radius: 0;
            border-top-left-radius: 0;
        }
    }

    &:not(:last-child) {
        .panel {
            border-bottom-right-radius: 0;
            border-bottom-left-radius: 0;
        }
    }

    .card-header {
        color: $link-color;
        padding: $list-group-item-padding-y $list-group-item-padding-x;
        display: flex;
        align-items: baseline;

        &::after {
            @include fa-icon;
            content: $fa-var-caret-down;
            margin-right: $app-spacer-1;
        }

        .panel-title {
            width: 100%;
        }

        .btn {
            border-width: 0;
        }
    }

    .card-body {
        padding-top: map-get($spacers, 3);
        padding-bottom: map-get($spacers, 3);
    }

    .accordion-toggle {
        .btn {
            padding: 0;
        }
    }
}

// "ng-select"
ng-select.ng-invalid.ng-touched .ng-select-container {
    border-color: #dc3545;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 3px #fde6e8;
}
